package com.qf.controller;

import com.qf.pojo.User;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.List;

/**
 * 接收参数
 * @author lixu
 */
@Controller
public class ParamController {

    /**
     * 第一
     * 基础类型  简单类型  直接绑定在形参上
     *
     * http://localhost:8080/param1?id=123&name=&flag=1&h=88.88
     *
     *   日期：默认 类型  2022/09/08 14:33:23
     *   Boolean：布尔类型 ： true false |||  1 --> true   。。。 0  -->false
     *
     *   小 double : 不支持null
     *   大 Double : 支持null
     *
     */
    @RequestMapping("/param1")
    public String param1(Integer id,
                         String name, Integer age,
                         @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date birthday,
                         Boolean flag, double h){
       /* String id = request.getParameter("id");
        Integer i = Integer.parseInt(id);*/

        System.out.println("===");


       return null;
    }

    /**
     * 第二  接收对象类型
     * @return
     */
    @RequestMapping("/param2")
    public String param2(User user){
        System.out.println("===");
        return null;
    }
    /**
     * 第三 ：数组类型
     * http://localhost:8080/param3?hobbys=足球&hobbys=篮球
     */
    @RequestMapping("/param3")
    public String param3(String[] hobbys){
        System.out.println("===:" + hobbys);
        return null;
    }
    /**
     * 第三 ：数组类型
     * http://localhost:8080/param4?hobby=足球&hobby=篮球
     */
    @RequestMapping("/param4")
    public String param4(User user){
        System.out.println("===:" + user.getHobby());
        return null;
    }
    /**
     * 第四 接收集合数据 （了解）
     * http://localhost:8080/param5?users[0].id=1&users[0].name=shine&users[0].gender=true&users[1].id=2&users[1].name=zhangsan
     */
    @RequestMapping("/param5")
    public String param5(User user){

        System.out.println("---");
        return null;
    }
}
